package com.service;

import com.Exception.NormalException.GroupException.UserAlreadyJoinGroupException;
import com.Result.GroupApplyResult;
import com.entity.Group;
import com.entity.GroupApply;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author XTC
 * @since 2024-07-10
 */
public interface GroupApplyService extends IService<GroupApply> {
    boolean add(GroupApply groupApply) throws UserAlreadyJoinGroupException;

    boolean acceptApply(Integer groupApplyId);

    boolean refuseApply(Integer applyId);

    List<GroupApplyResult> getApplyByGroupList(List<Group> groupList);

    boolean sendApplyResult(Integer applyId, boolean result);

    boolean sendGroupApply(GroupApply groupApply);
}
